package com.starry.module.system.api.user.domain.qo;


import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

import java.util.Date;
import java.util.Set;

/**
 * 系统用户SysUserQo
 *
 * @author xiaoke
 */
@Data
public class SysUserQo {
    /**
     * 主键
     */
    @Schema(description = "主键")
    private Long id;

    /**
     * 机构ID
     */
    @Schema(description = "主机构id")
    private Long deptId;
    /**
     * 主岗位
     */
    @Schema(description = "主岗位")
    private Long postId;
    /**
     * 密码
     */
    @Schema(description = "密码")
    private String password;
    /**
     * 用户名
     */
    @Schema(description = "用户名")
    @NotNull(message = "用户名")
    private String username;
    /**
     * 昵称
     */
    @Schema(description = "昵称")
    private String name;
    /**
     * 用户头像
     */
    @Schema(description = "用户头像")
    private String avatar;
    /**
     * 邮箱
     */
    @Schema(description = "邮箱")
    private String email;
    /**
     * 手机号码
     */
    @Schema(description = "手机号码")
    private String phone;
    /**
     * 生日
     */
    @Schema(description = "生日")
    private Date birthday;
    /**
     * 性别(1 男 0 女)
     */
    @Schema(description = "性别(1 男 0 女)")
    private Integer sex;
    /**
     * 备注
     */
    @Schema(description = "备注")
    private String remark;

    /**
     * 岗位ID集合
     */
    @Schema(description = "岗位id")
    private Set<Long> postIdList;

    /**
     * 角色ID集合
     */
    @Schema(description = "角色id")
    private Set<Long> roleIdList;

    /**
     * 机构ID集合
     */
    @Schema(description = "机构id")
    private Set<Long> deptIdList;
}

